import { Config } from 'config.js';

class HTTP {
  constructor() {
    this.BaseUrl = Config.restUrl;
  }


  /**
   *爱易泊车 
  **/
  postAuthorizationUrl = '/api/Customer/MiniProgramAuthorization'; //授权
  getValidateQrCodeStateUrl = '/api/Order/ValidateQrCodeState?code=';//查询订单状态
  getHistoryCarListUrl = '/api/Order/GetHistoryCarCodeByUser';//查询历史缴费车牌
  getGetFeeByCarUrl = '/api/Order/GetFeeByCar';//根据车牌号查找当前费用订单（包括历史欠费）
  getOrderMentPayUrl   = '/api/Order/OrderPay';//缴费=>新增支付记录表
  getUpdateOrderStatePayUrl   = '/api/Order/UpdateOrderState';//无费用支付
  getGetVerificationCodeUrl ='/api/Customer/GetVerificationCode?phoneNumber='; // 用户获取验证码
  getValidateVerificationCodeUrl = '/api/Customer/ValidateVerificationCode?'; //微信授权用户绑定手机号


  //http 请求类, 当noRefech为true时，不做未授权重试机制
  request(params){
    // url, data, method
    if (!params.method){
      params.method = "GET"
    }
    wx.showLoading({
      title: '数据加载中',
      mask:true
    })
    wx.request({
      url: this.BaseUrl + params.url,
      method: params.method,
      data: params.data,
      header:{
        'Authorization': 'Bearer ' + wx.getStorageSync('token')
      },
      success:(res) => {
        let code = res.statusCode.toString();
        let startChar = code.charAt(0);
        if (startChar == '2'){
          params.success && params.success(res.data)
        }else{
          if (code == '401'){
            wx.navigateTo({
              url: '/pages/login/index',
            })
            return;
          }else{
            params.error && params.error(res)
          }
        }
      },
      fail:(err) => {
        params.fail && params.fail(err)
      },
      complete:(ers) =>{
        wx.hideLoading();
      }
      
    })
  }
}

export { HTTP }